<?php
include_once 'animacao.php';
include_once 'link.php';
include_once 'musica.php';
include_once 'musica_animacao.php';
include_once 'tag.php';
include_once 'missa.php';
include_once 'musica_missa.php';
include_once 'dao_mysql.php';
include_once 'dao_pgsql.php';
include_once 'configuracao_de_local.php';

class DAO {
	
	private $banco;
	
	function DAO() {
		date_default_timezone_set ('America/Recife');
		
		if (Configuracao_Local::eh_local()) {
			//local
			$this->banco = new DAO_MySQL();
		}
		else {
			//online
			$this->banco = new DAO_PgSQL();
		}
		 
	}
	
	function consulta_de_quem_eh($parte) {
		return $this->banco->consulta_de_quem_eh($parte);
	}
	
	function consulta_eventos($tipos_eventos, $nome_busca, $local_busca, $tipo_data, $data1, $data2, $musica_id, $descricao_busca, $ord_campo, $ord_direcao) {
		return $this->banco->consulta_eventos($tipos_eventos, $nome_busca, $local_busca, $tipo_data, $data1, $data2, $musica_id, $descricao_busca, $ord_campo, $ord_direcao);
	}
	
	function consulta_musicas($texto, $ord_campo, $ord_direcao) {
		return $this->banco->consulta_musicas($texto, $ord_campo, $ord_direcao);
	}
	
	function consulta_musicas_letra_inicial($letra, $ord_campo, $ord_direcao) {
		return $this->banco->consulta_musicas_letra_inicial($letra, $ord_campo, $ord_direcao);
	}
	
	function consulta_musicas_titulo($texto) {
		return $this->banco->consulta_musicas_titulo($texto);
	}
	
	function consulta_tags($parte_tag) {
		return $this->banco->consulta_tags($parte_tag);
	}
	
	function consulta_tipos_links($parte) {
		return $this->banco->consulta_tipos_links($parte);
	}
	
	function consulta_ultimos_5_eventos($ord_campo, $ord_direcao) {
		return $this->banco->consulta_ultimos_5_eventos($ord_campo, $ord_direcao);
	}
	
	function consulta_ultimas_5_musicas($ord_campo, $ord_direcao) {
		return $this->banco->consulta_ultimas_5_musicas($ord_campo, $ord_direcao);
	}
	
	function deletar_evento($evento) {
		$this->banco->deletar_evento($evento);
	}
	
	function deletar_link($link) {
		$this->banco->deletar_link($link);
	}
	
	function deletar_musica($musica) {
		$this->banco->deletar_musica($musica);
	}
	
	function deletar_todos_links_de_musica($musica) {
		$this->banco->deletar_todos_links_de_musica($musica);
	}
	
	function descricao_de_evento_contem_busca($texto_busca, $evento) {
		return $this->banco->descricao_de_evento_contem_busca($texto_busca, $evento);
	}
	
	function get_animacao($animacao_id) {
		return $this->banco->get_animacao($animacao_id);
	}
	
	function get_evento($evento_id) {
		return $this->banco->get_evento($evento_id);
	}

	function get_link($link_id) {
		return $this->banco->get_link($link_id);
	}
	
	function get_missa($missa_id) {
		return $this->banco->get_missa($missa_id);
	}
	
	function get_musica($musica_id) {
		return $this->banco->get_musica($musica_id);
	}
	
	function get_musica_animacao($musica_id, $animacao_id, $ordem) {
		return $this->banco->get_musica_animacao($musica_id, $animacao_id, $ordem);
	}
	
	function get_musica_missa($musica_id, $missa_id, $parte_missa) {
		return $this->banco->get_musica_missa($musica_id, $missa_id, $parte_missa);
	}
	
	function get_tag($tag_id) {
		return $this->banco->get_tag($tag_id);
	}
	
	function get_tag_texto($tag) {
		return $this->banco->get_tag_texto($tag);
	}
	
	function get_todas_musicas() {
		return $this->banco->get_todas_musicas();
	}
	
	function id_facebook_eh_valido($id_facebook) {
		return $this->banco->id_facebook_eh_valido($id_facebook);
	}
	
	function observacao_de_musica_contem_busca($texto_busca, $musica) {
		return $this->banco->observacao_de_musica_contem_busca($texto_busca, $musica);
	}

	function quantas_animacoes() {
		return $this->banco->quantas_animacoes();
	}
	
	function quantas_missas() {
		return $this->banco->quantas_missas();
	}
	
	function quantas_musicas() {
		return $this->banco->quantas_musicas();
	}
	
	function quem_mais_cantou() {
		return $this->banco->quem_mais_cantou();
	}
	
	function remover_tag_de_musica($tag, $musica) {
		$this->banco->remover_tag_de_musica($tag, $musica);
	}
	
	function remover_todas_tags_de_musica($musica) {
		$this->banco->remover_todas_tags_de_musica($musica);
	}
	
	function remover_tags_orfas() {
		$this->banco->remover_tags_orfas();
	}

	function salvar_animacao($animacao) {
		$this->banco->salvar_animacao($animacao);
	}
	
	function salvar_missa($missa) {
		$this->banco->salvar_missa($missa);
	}
	
	function salvar_musica($musica) {
		$this->banco->salvar_musica($musica);
	}
	
	function salvar_link($link) {
		$this->banco->salvar_link($link);
	}

	function salvar_tag($tag, $musica) {
		$this->banco->salvar_tag($tag, $musica);
	}

}
?>